﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace FieldHost {
	public class SpecializedMatrix <TOuterKey, TInnerKey, TValue> {

		public SpecializedMatrix() {

		}

		private readonly Dictionary<TInnerKey, TValue> _innerList = new Dictionary<TInnerKey, TValue>();

		private readonly Dictionary<TOuterKey, Dictionary<TInnerKey, TValue>> _outerList = new Dictionary<TOuterKey, Dictionary<TInnerKey, TValue>>();

		public TValue GetValue(TOuterKey outerKey, TInnerKey innerKey) {
			var outerItem = _outerList[outerKey] as Dictionary<TInnerKey, TValue>;
			return outerItem[innerKey];
		}

		public void SetValue(TOuterKey outerKey, TInnerKey innerKey, TValue value) {
			//TODO: pending
		}
	}
}
